int Capacity = ...;
range Items = 1..18;
int Demand[Items] = ...;
float Duals[Items] = ...;
//Decision var X[i], X[i] =1 if customer i is on the route and 0 otherwise
dvar int X[Items] in 0..100000;
//sub-problem model
minimize
  1 - sum(i in Items) Duals[i] * X[i];
subject to {
  ctFill:
     sum(i in Items) Demand[i] * X[i] <= Capacity;
}